1. Field of the Invention
The present invention relates generally to a system and a method of manipulating a data base, and more particularly, to a system of manipulating a relational data base.
2. Description of the Background Art
One data base systems directed to making information resources available to users by means of an abbreviated language is a relational data base system.
Data is stored in the form of table in the relational data base system. A table is constituted as shown in FIG. 1, for example, including a table name 100 indicative of the entire contents of the table and item names 101a and 101b for identifying the contents of the respective columns. Data 102a and 102b are placed under the item names 101a and 101b, respectively.
The relational data base stores a plurality of tables. A table name 100 varies from table to table in order to identify each table. In each table, an item name also varies from column to such column that each column is distinguishable from other columns.
A table of a relational data bases comprises a row 103 and columns 104a and 104b. The row 103 is a group of data elements (102a, 102b) related to a particular event.
The relational data base system bases on a relational model. The relational model meets the following three requirements.
(1) Although an internal data construction takes a form of table as shown in FIG. 1, the order of rows and columns thereof is not defined. The table is referred to as a relation table and corresponds to a file. A row corresponds to a record. A column is referred to as attribute or an item and corresponds to a field.
(2) Data in the table are consistent with each other. Therefore, the following two types of integrities are maintained. (a) There exists a data item for identifying each row of the table. Such data is referred to as an item or a primary key. (b) When such primary key is also used as a part of another table, the primary keys in both tables are consistent with each other.
(3) A data manipulation language is prepared which is used for manipulation based on relational algebra.
Languages for use in manipulating a relational data base include SQL (structured query language) and QBE (query by example). General explanations on SQL and QBE are described in "Introduction to Simple Reference Language" by T. Hirao, p. 80-p89, pp. 140-142, Oct. 25, 1983, Ohm Sha.
SQL is a command type language having such a function as data definition (definition of a table and of data manipulation). The command type denotes a format which allows a user to give an instruction through a terminal equipment under TSS (time sharing system) without using a program. The SQL is an non-procedure language which gives only an instruction on "what we want".
The QBE is a display based (example type) language which allows a user to give an instruction by setting conditions at an appropriate column while looking at a frame of the table displayed on a terminal equipment.
While a SQL type language is structured to implement instructions from definition of a table for manipulation and deletion within one language system, a QBE type language is structured to implement only manipulation of a table.
The relational data base system provides also an instruction type referred to as a storage type in which previously stored instruction on manipulation of a relational data base is called for execution whenever necessary.
Manipulation of a relational data base such as modification, deletion and search of a table requires definition of an operation procedure in a text format by utilizing such commands as "SELECT", "FROM" and "WHERE", for example, in a SQL type language. Almost all the data as objectives of manipulation of a relational data base are data of table format based on the above-described relation table. It is not necessarily easy for a user to define an operation procedure while regrasping in a text format the data construction from such table format.
In addition, although the manipulation procedure after the completion of definition can be stored for additional use, the manipulation procedure read out for the additional use, which is described in a text format, has too low understandability to be used.
With QBE, it is possible to describe a manipulation procedure in a table by reading out a table using and filling the table with such commands as "DRAW" and "DRAW COND". This QBE also allows a graphic representation of a simple procedure by using a table only. For describing a complicated manipulation procedure, however, the QBE requires a description in the text format in which an unlabeled column is called by using "ENLARGE" or the like and a manipulation procedure is described in this column in the text format. The same problem as in the case of SQL therefore arises.
Software for visually acquiring a relational data base is described in "Relational Data Base for Macintosh with Substantial Management Function", by N. Nisho, Nikkei BYTE, July 1990, pp. 186-pp. 198.
The software provides independent graphical editing means for designing of data structure, layout of display data and such. Complicated manipulation procedures should be described using a flow chart even with this software.